package 电影院;

import java.util.Scanner;

public class 售票 extends 放映厅{
    public 售票() {
    }
    public void 查询座位(放映厅 f[][]){
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入查询的电影名称");
        String name= sc.nextLine();
        System.out.println("请输入查询的电影场次");
        int b= sc.nextInt();
        for (int i = 0; i <f.length; i++) {
            if (name.equals(f[i][b-1].getName())&& b == f[i][b-1].getChangci()) {
                f[i][b-1].打印();
                return;
            }
        }
        System.out.println("查询失败");
            return;
    }

    public void 自动选座(放映厅 f[][]){
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入购买的电影名称");
        String name= sc.nextLine();
        System.out.println("请输入购买的电影场次");
        int b= sc.nextInt();
        System.out.println("请输入购买的张数");
        int zhangshu= sc.nextInt();
        for (int n = 0; n <f.length; n++) {
            if (name.equals(f[n][b-1].getName())&&b==f[n][b-1].getChangci()){
                int k=1;
                for (int i = 0; i <f[n][b-1].getHang(); i++) {
                    for (int j = 0; j <f[n][b-1].getLie(); j++,k++) {
                        if (k>zhangshu) {
                            System.out.println("支付总金额为："+(f[n][b-1].getMoney()*zhangshu));
                            return;
                        }
                        if (f[n][b-1].list.get(i).get(j)!=-1){
                            f[n][b-1].kong--;
                            System.out.println("第"+k+"张票：");
                            System.out.println("片名："+f[n][b-1].getName());
                            System.out.println("场次："+f[n][b-1].getChangci());
                            System.out.println("座位号：第"+(i+1)+"排第"+(j+1)+"列");
                            System.out.println("电子发票码："+f[n][b-1].list.get(i).get(j));
                            f[n][b-1].list.get(i).set(j,-1);
                        }
                    }
                }
            }
        }
    }

    public void 手动选座(放映厅 f[][]){
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入购买的电影名称");
        String name= sc.nextLine();
        System.out.println("请输入购买的电影场次");
        int b= sc.nextInt();
        System.out.println("请输入购买的ID号");
        int ID= sc.nextInt();
        for (int n = 0; n < f.length; n++) {
            if (name.equals(f[n][b-1].getName())&&b==f[n][b-1].getChangci()){
                int j=ID%10-1;
                int i=ID/10;
                if(f[n][b-1].list.get(i).get(j)==-1){
                    System.out.println("选座失败");
                    return;
                }
                f[n][b-1].kong--;
                System.out.println("片名："+f[n][b-1].getName());
                System.out.println("场次："+f[n][b-1].getChangci());
                System.out.println("座位号：第"+(i+1)+"排第"+(j+1)+"列");
                System.out.println("电子发票码："+f[n][b-1].list.get(i).get(j));
                System.out.println("支付金额为："+f[n][b-1].getMoney());
                f[n][b-1].list.get(i).set(j,-1);
                return;
            }
        }
        System.out.println("选座失败");
        return;
    }
    public void 退票(放映厅 f[][]){
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入要退票的电影名称");
        String name= sc.nextLine();
        System.out.println("请输入要退票的电影场次");
        int b= sc.nextInt();
        System.out.println("请输入退票的ID号");
        int ID= sc.nextInt();
        for (int n = 0; n <f.length; n++) {
            if (name.equals(f[n][b-1].getName())&&b==f[n][b-1].getChangci()){
                int j=ID%10-1;
                int i=ID/10;
                f[n][b-1].list.get(i).set(j,ID);
                f[n][b-1].tuipiao++;
                f[n][b-1].kong++;
            }
        }
        System.out.println("退票成功");
    }

}
